package com.sdweizan.sdk.bytedance.bean.payment;

import com.alibaba.fastjson.annotation.JSONField;
import com.sdweizan.sdk.bytedance.bean.BdBaseResponse;
import lombok.Data;
import lombok.NoArgsConstructor;

@NoArgsConstructor
@Data
public class BdQueryOrderResponse extends BdBaseResponse {

    // 开发者侧的订单号
    @JSONField(name = "out_order_no")
    private String outOrderNo;
    // 抖音侧的订单号
    @JSONField(name = "order_id")
    private String orderId;
    @JSONField(name = "payment_info")
    private PaymentInfo paymentInfo;
    // CPS相关信息
    @JSONField(name = "cps_info")
    private String cpsInfo;

    @NoArgsConstructor
    @Data
    public static class PaymentInfo {
        // 支付金额，单位为分
        @JSONField(name = "total_fee")
        private Long totalFee;
        // 支付状态枚举值：
        // SUCCESS：成功 TIMEOUT：超时未支付 PROCESSING：处理中 FAIL：失败
        @JSONField(name = "order_status")
        private String orderStatus;

        @JSONField(name = "pay_time")
        private String payTime;
        // 支付渠道， 1-微信支付，2-支付宝支付，10-抖音支付
        @JSONField(name = "way")
        private Integer way;
        //支付渠道侧的支付单号
        @JSONField(name = "channel_no")
        private String channelNo;
        @JSONField(name = "channel_gateway_no")
        private String channelGatewayNo;
        // 该笔交易卖家商户号
        @JSONField(name = "seller_uid")
        private String sellerUid;
        //订单来源视频对应视频 id
        @JSONField(name = "item_id")
        private String itemId;
        // 开发者自定义字段
        @JSONField(name = "cp_extra")
        private String cpExtra;
        @JSONField(name = "msg")
        private String msg;
        @JSONField(name = "author_id")
        private Long authorId;
    }
}
